草庐IT

c++ - 匿名管道

全部标签

javascript - 我如何从匿名自调用函数中公开函数?

(function(){vara=function(){alert("heynow!!");};return{"hi":function(){returna;}};})();hi();此代码无效。我如何暴露一个函数?? 最佳答案 自调用函数返回一个属性为hi的对象,这个对象没有被添加到全局作用域中,所以你可以直接使用该属性。将函数的结果放在一个变量中:varo=(function(){vara=function(){alert("heynow!!");};return{"hi":function(){returna;}};})();

javascript - JSHINT:如何禁用匿名 'function' 后缺少空格的警告

我在jshint中收到了警告'[L76:C24]Missingspaceafter'function''我遵循NicholasZakkasMaintainablejavascript风格,匿名函数后没有空格。如何在jshint中删除此警告?.jshintrc{"node":true,"browser":true,"es5":true,"esnext":true,"bitwise":true,"camelcase":true,"curly":true,"eqeqeq":true,"immed":true,"indent":4,"latedef":true,"newcap":true,"n

javascript - C - tiny-aes-c 和 Javascript CryptoJS 互操作性

使用tiny-aes-c.考虑以下C代码:intmain(intargc,charconst*argv[]){uint8_tkey[6]={'s','e','c','r','e','t'};uint8_tiv[16]={0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfe,0xff};uint8_tin[6]={'m','e','s','a','g','e'};uint8_tout[6]={0x17,0x8d,0xc3,0xa1,0x56,0x34};structAES_ctxctx;AES

Javascript:为什么在这里使用匿名函数?

我正在浏览JIT的代码,我看到了这个:varisGraph=($type(json)=='array');varans=newGraph(this.graphOptions);if(!isGraph)//maketree(function(ans,json){ans.addNode(json);for(vari=0,ch=json.children;i这些匿名函数的目的是什么?它们会立即超出范围,对吗?为什么使用:(function(ans,json){ans.addNode(json);for(vari=0,ch=json.children;i代替:ans.addNode(json)

javascript - setTimeout 传递命名函数与匿名函数

关于MDNpageforwindow.setTimeout我找到这个例子,其中一个命名函数被传递给window.setTimeout:vartimeoutID;functiondelayedAlert(){timeoutID=window.setTimeout(slowAlert,2000);}functionslowAlert(){alert("Thatwasreallyslow!");}functionclearAlert(){window.clearTimeout(timeoutID);}在我维护的代码中,我遇到了这个例子的等价物,其中声明了一个匿名函数,因为它被传递给windo

javascript - RxJS 6 - 在管道中首次使用时是否需要取消订阅?

给定以下代码functiontriggerAction(){constasyncAction$=of("value1");asyncAction$.clientLogin().pipe(first(),tap(val=>console.log(`Test:${val}`)),).subscribe();}我需要退订吗?以前,当将first与修补运算符一起使用时,它们会在发出第一个事件后自行取消订阅,但从文档中无法立即清楚地知道等效的管道运算符是否也这样做。https://www.learnrxjs.io/operators/filtering/first.htmlhttps://rxj

javascript - 匿名函数中的 "this"?

在JohnResig的书“ProJavascripttechniques”中,他描述了一种使用以下代码生成动态对象方法的方法://CreateanewuserobjectthatacceptsanobjectofpropertiesfunctionUser(properties){//Iteratethroughthepropertiesoftheobject,andmakesure//thatit'sproperlyscoped(asdiscussedpreviously)for(variinproperties){(function(){//Createanewgetterfort

javascript - 如何在 Javascript 中收集匿名对象垃圾?

如果我创建了一个对象但没有将它赋值给任何东西,Javascript什么时候会垃圾回收这个对象?这是一个例子:alert(newDate().getTime());如果不进行这样的垃圾回收,会不会造成内存泄漏?for(vari=0;i 最佳答案 如果作用域内没有人引用匿名对象,则下次GC运行时将对它们进行垃圾回收。因此,在Console.info完成运行后,它们就可以进行垃圾收集了。如果您设置任何范围内的变量来引用它们,那么它们就不会。 关于javascript-如何在Javascript

javascript - 为什么匿名函数本身是 javascript 中的语法错误?

如果我尝试执行一个只有一个源代码行是一个对象的脚本:{prop:'value'}它解析良好(在V8和UglifyJS中)。同样,我可以将字符串或数字作为源代码单独放置,并且不会报告任何语法错误。但是,V8和UglifyJS都提示自己:function(){}我收到UncaughtSyntaxError:Unexpectedtoken(.为什么第一个示例中的对象正常时会中断?javascript中的函数不只是对象吗?我意识到声明一个匿名函数而不执行它不会有任何作用;那不是问题。我想知道为什么会导致解析错误。 最佳答案 来自ECMASc

javascript - JavaScript 中管道和 monad 是如何协同工作的?

我查看了类似的问题和答案,但没有找到直接解决我的问题的答案。我正在努力理解如何使用Maybe或Either或Monads与管道功能结合使用。我想将函数连接在一起,但我希望管道停止并在任何步骤发生错误时返回错误。我正在尝试在node.js应用程序中实现函数式编程概念,这确实是我第一次认真探索这两者,所以没有任何答案会如此简单以至于侮辱我在这个主题上的智商。我写了一个像这样的管道函数:const_pipe=(f,g)=>async(...args)=>awaitg(awaitf(...args))module.exports={arguments.pipeAsync:async(...fn